			function getResourceType(resTypeId){
				var value;			
				RealtimeConfigAjax.getResourceType(resTypeId,function(data){
						value = data;
					}
				);
				return value;
			}

			function getAllResourceTypes(){
				var value;			
				RealtimeConfigAjax.getAllResourceTypes(function(data){
						value = data;
					}
				);
				return value;
			}

			function getResource(resId){
				var value;			
				RealtimeConfigAjax.getResource(resId,function(data){
						value = data;
					}
				);
				return value;
			}

			function getAttribute(attributeId){
				var value;			
				RealtimeConfigAjax.getAttribute(attributeId,function(data){
						value = data;
					}
				);
				return value;
			}
			
			function getAttributeValue(resId, attributeId){
				var value;			
				RealtimeConfigAjax.getAttributeValue(resId,attributeId,function(data){
						value = data;
					}
				);
				return value;
			}
			
			function getAllAttributeValues(resId){
				var value;			
				RealtimeConfigAjax.getAllAttributeValues(resId,function(data){
						value = data;
					}
				);
				return value;
			}
			
			function getAttributesOfResourceType(resTypeId){
				var value;			
				RealtimeConfigAjax.getAttributesOfResourceType(resTypeId,function(data){
						value = data;
					}
				);
				return value;
			}
			
			function getProperty(propId){
				var value;			
				RealtimeConfigAjax.getProperty(propId,function(data){
						value = data;
					}
				);
				return value;
			}

			function getPropertiesOfGroup(groupId){
				var value;			
				RealtimeConfigAjax.getPropertiesOfGroup(groupId,function(data){
						value = data;
					}
				);
				return value;
			}

			function getPropertiesOfResourceType(resTypeId){
				var value;			
				RealtimeConfigAjax.getPropertiesOfResourceType(resTypeId,function(data){
						value = data;
					}
				);
				return value;			
			}

			function getRealtimeConfigureOfResourceType(resTypeId){
				var value;			
				RealtimeConfigAjax.getRealtimeConfigureOfResourceType(resTypeId,function(data){
						value = data;
					}
				);
				return value;			
			}

			function getRealtimeConfigureOfResource(resId){
				var value;			
				RealtimeConfigAjax.getRealtimeConfigureOfResource(resId,function(data){
						value = data;
					}
				);
				return value;			
			}
			
			function getAllRealtimeConfigures(){
				var value;			
				RealtimeConfigAjax.getAllRealtimeConfigures(function(data){
						value = data;
					}
				);
				return value;
			}
			
			function saveRealtimeConfigure(config){
				var id = config.getId();
				var referId = config.getReferId();
				var type = config.getType();
				var confStr = config.getConfigure();
				
				var value;
				RealtimeConfigAjax.saveRealtimeConfigure(id, referId, type, confStr, function(data){
						value = data;
					}
				);
				return value;			
			}
			
			function removeRealtimeConfigure(id){
				var value;
				RealtimeConfigAjax.removeRealtimeConfigure(id, function(data){
						value = data;
					}
				);
				return value;			
			}
			
			
			function getDisplayerSettingForResource(resTypeId){
				var value;			
				RealtimeConfigAjax.getDisplayerSettingForResource(resTypeId, function(data){
						value = data;
					}
				);
				return value;			
			}
			
			function getDisplayerSettingForResType(resTypeId){
				var value;			
				RealtimeConfigAjax.getDisplayerSettingForResType(resTypeId, function(data){
						value = data;
					}
				);
				return value;			
			}
			
			function getPropertyValuesForResources(resIds){
				var value;			
				RealtimeConfigAjax.getPropertyValuesForResources(resIds, function(data){
						value = data;
					}
				);
				
				var resDatas = new Array();
				for(var i=0; i<value.length; i++){
					resDatas[i] = new ResourceData(value[i]);
				}
				
				return resDatas;			
			}

			
			/**
			 * Class Datamanager
			 */
			function DataManager ()	{
				this.attributes = new Map();
				this.attributesOfType = new Map();				
			}
			
			DataManager.prototype.getResourceType = function (resTypeId)	{				
				return getResourceType(resTypeId);	
			}

			DataManager.prototype.getAllResourceTypes = function ()	{				
				return new Arr(getAllResourceTypes());	
			}

			DataManager.prototype.getResource = function (resId)	{				
				return getResource(resId);	
			}

			DataManager.prototype.getAttribute = function (attributeId)	{
				var key = ""+attributeId;
				var a = this.attributes.take(key);
				if(a==null){
					a = getAttribute(attributeId);
					this.attributes.put(key, a); 
				}
				return a;	
			}

			DataManager.prototype.getAttributesOfResourceType = function (resTypeId)	{
				var key = ""+resTypeId;
				var a = this.attributesOfType.take(key);
				if(a==null){
					a = new Arr(getAttributesOfResourceType(resTypeId));
					this.attributesOfType.put(key, a);
				}
				return a;
			}

			DataManager.prototype.getAttributeValue = function (resId, attributeId)	{				
				return getAttributeValue(resId, attributeId);	
			}

			DataManager.prototype.getAllAttributeValues = function (resId)	{				
				return new Arr(getAllAttributeValues(resId));	
			}
			
			DataManager.prototype.getProperty = function (propId)	{				
				return getProperty(propId);	
			}
			
			DataManager.prototype.getPropertiesOfGroup = function (groupId)	{				
				return new Arr(getPropertiesOfGroup(groupId));	
			}
			
			DataManager.prototype.getPropertiesOfResourceType = function (resTypeId)	{				
				return new Arr(getPropertiesOfResourceType(resTypeId));	
			}			

			DataManager.prototype.getDisplayerSettingForResource = function (resTypeId){
				return new Arr(getDisplayerSettingForResource(resTypeId));		
			}
			
			DataManager.prototype.getDisplayerSettingForResType = function (resTypeId){
				return new Arr(getDisplayerSettingForResType(resTypeId));			
			}
			
			DataManager.prototype.getRealtimeConfigureOfResourceType = function (resTypeId){
				return getRealtimeConfigureOfResourceType(resTypeId);			
			}

			DataManager.prototype.getRealtimeConfigureOfResource = function (resId){
				return getRealtimeConfigureOfResource(resId);			
			}
			
			DataManager.prototype.getAllRealtimeConfigures = function (){
				return new Arr(getAllRealtimeConfigures());			
			}			
			
			DataManager.prototype.saveRealtimeConfigure = function (config){
				return saveRealtimeConfigure(config);			
			}

			DataManager.prototype.removeRealtimeConfigure = function (id){
				return removeRealtimeConfigure(id);			
			}
			